From d10651be94aa0a87222508089435ab35c9288ff3 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Thu, 4 Feb 2010 08:53:49 +0000 Subject: [PATCH] x86: make max_mfn returned from XENMEM_machphys_mapping dynamic This helps debugging in the guest kernels, as then MFNs there can then be range checked based on the reported value. Signed-off-by: Jan Beulich --- xen/arch/x86/mm.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c index cab20a6f66..39c665d914 100644 --- a/xen/arch/x86/mm.c +++ b/xen/arch/x86/mm.c @@ -4456,12 +4456,14 @@ long arch_memory_op(int op, XEN_GUEST_HANDLE(void) arg) case XENMEM_machphys_mapping: { - static const struct xen_machphys_mapping mapping = { + struct xen_machphys_mapping mapping = { .v_start = MACH2PHYS_VIRT_START, .v_end = MACH2PHYS_VIRT_END, .max_mfn = MACH2PHYS_NR_ENTRIES - 1 }; + if ( !mem_hotplug ) + mapping.max_mfn = max_page - 1; if ( copy_to_guest(arg, &mapping, 1) ) return -EFAULT; -- 2.30.2